package org.webdb.jdbc;

import org.webdb.jdbc.impl.JDBCSelectQuery;

import com.healthmarketscience.sqlbuilder.Condition;
import com.healthmarketscience.sqlbuilder.InsertQuery;
import com.healthmarketscience.sqlbuilder.SqlObject;
import com.healthmarketscience.sqlbuilder.dbspec.Column;
import com.healthmarketscience.sqlbuilder.dbspec.Table;

public interface JDBCSqlProvider {

    Column column(JDBCTable table, String columnName);

    Condition eq(JDBCTable table, JDBCColumn column, Object value);

    Column getColumn(JDBCColumn column);

    Table getTable(JDBCTable table);

    InsertQuery insertInto(JDBCTable table);

    JDBCSelectQuery select(JDBCTable table);

    SqlObject callSequenceNextValue(String sequenceName);

}
